The present invention relates to a replicated data processing method of distributed processing system in which a plurality of processors respectively having replicated resources are coupled by a network and those processors take partial charge to process data generated from the replicated resources. In particular, the present invention relates to a replicated data processing method of distributed processing system suitable for conducting highly reliable distributed processing efficiently.
At the present time, computers are used in a wide area, and various researches and developments are in progress mainly aiming at improvement of computers in high speed and reliability.
In particular, growth of distributed processing systems in the computer industry is anticipated as the fourth wave following main frames in the middle 1960s to the middle 1970s, minicomputers in the middle 1970s to the early 1980s, and personal computers in 1980s.
The term "distributed processing system" refers to a system which uses the whole of a network connecting a plurality of computers as if it is a single computer.
Further, the term "distributed processing" refers to a processing form whereby a plurality of computers coupled by communication lines cooperate to process one job. Each computer has a processor for executing a part of that job, and those processors send and receive messages to perform their processes.
An object of distributed processing is to attain decentralization of function, decentralization of load, decentralization of region, and higher reliability by decentralizing all jobs, which have heretofore been so centralized upon one computer as to be processed, to a plurality of computers so as to be processed therein.
That is, respective computers are reduced in size and improved in economization by providing respective computers with only their respective necessary functions to decentralize functions. In addition, respective computers have high functions, and hence a system of high functions can be constructed.
Jobs exceeding the capabilities of calculation speed, storage capacity, and input/output speed of one computer can also be decentralized or distributed to a plurality of computers and processed therein. As a result, an increase or decrease in load can be coped with flexibly.
Further, if all of a large amount of data are transmitted to one computer located at a long distance and processed therein, it takes a long time to transmit data. If area distribution is used and simple preprocessing is conducted by an area computer to transmit the result alone to the center, however, a part of the processing result is obtained on the spot. Further, a small amount of transmitted data suffices.
In case all processing is performed by one computer, the entire system stops if that computer gets out of order. Even if one computer gets out of order in case jobs are allotted to a plurality of computers by means of distributed processing, however, the processing can be continued by remaining computers with somewhat degraded performance, resulting in improved system reliability.
Such distributed processing is described in "Electronic Information Communication Handbook" (edited by The Institute of Electronics, Information and Communication Engineers and published by OHM SHA LTD. in 1988), pp. 1615-1626.
Some of distributed processing in recent years support distributed processing between different kinds of machines for connecting products of different manufacturers via a network as described in Japanese periodical "Nikkei Electronics, 1990 6-11 no. 502" (published by Nikkei BP Ltd. in 1990), pp. 121-148.
In conventional methods for administering and controlling files in distributed processing systems, there is a method of multiplexing only important files with an arbitrary degree of replication and administering them.
As a method relating to the reliability of files thus replicated, there is a method of collecting data outputted from the replicated files in a computer using the data for a predetermined period and checking matching among collected data.
However, such a conventional control method of replicated files in distributed processing systems has a problem that a recovery method upon occurrence of noncoincidence among contents of the collected data is not considered and the processing of accessing the file stops when a noncoincidence state or mismatching has occurred.
Since matching between data outputted from replicated files is checked after collection for the predetermined period, an access processing is delayed by that time, resulting in another problem.